#面向对象 - 之 继承篇
#定义一个学生类
class Student:
    #定义属性
    name = None
    age = None
    __score = None

    #定义构造方法
    def __init__(self , name , age):
        self.name = name
        self.age = age

    #定义普通的公开方法
    def show_info(self):
        print(f"name={self.name} , age = {self.age} , score = {self.__score}")

    #设置学生分数
    def set_score(self , score):
        self.__score = score

#定义小学生类并且继承学生类
class Pupil(Student):
    #定义小学生私有方法
    def testing(self):
        print("小学生正在考小学数学...")

#定义一个大学生类 继承学生类
class Graduate(Student):
    #定义大学生的私有方法
    def testing(self):
        print("大学生正在考高等数学...")

#这样类就定义好了  进行测试
student1 = Pupil("樊振东" , 25)
student1.testing()
student1.set_score(88)
student1.show_info()

#测试大学生类
student2 = Graduate("马龙" , 35)
student2.testing()
student2.set_score(100)
student2.show_info()